package com.battle.service.service.in;

import com.battle.pojo.vo.questionBankDetailsStudy.GetQuestionBankDetailsStudyVo;
import nirvana.core.domains.vo.PageResult;
import com.battle.pojo.param.questionBankStudy.*;
import com.battle.pojo.vo.questionBankStudy.*;

import java.util.List;


/**
 * 【描 述】：题库学习服务
 * 【环 境】：J2SE
 * 【详 细】：
 */
public interface QuestionBankStudyService {

    /**
     * 创建题库学习
     *
     * @param param
     */
    Long createQuestionBankStudy(CreateQuestionBankStudyParam param);

    /**
     * 修改题库学习
     *
     * @param param
     */
    void editQuestionBankStudy(EditQuestionBankStudyParam param);

    /**
     * 移除题库学习
     *
     * @param id
     */
    void removeQuestionBankStudy(Long id);

    /**
     * 启动/禁用题库学习
     *
     * @param id
     */
    void enabledQuestionBankStudy(Long id);

    /**
     * 获取题库学习详情
     *
     * @param id
     * @return
     */
    GetQuestionBankStudyVo getQuestionBankStudy(Long id);

    /**
     * 根据id获取题库题目详情
     * @param id
     * @return
     */
    GetQuestionBankDetailsStudyVo getQuestionBankDetailsStudy(Long id);
    /**
     * 获取题库学习列表
     *
     * @param param
     * @return
     */
    PageResult<GetQuestionBankStudyListVo> getQuestionBankStudyList(GetQuestionBankStudyListParam param);


    /**
     * 获取题库学习下拉列表
     *
     * @param param
     * @return
     */
    List<GetQuestionBankStudyDownListVo> getQuestionBankStudyDownList(GetQuestionBankStudyDownListParam param);


}